package yxxy.c_04;

public class T {
    private static int count = 10;

    public synchronized static void m(){
        count--;
        System.out.println(Thread.currentThread().getName() +"count = "+ count);
    }

    /**
     *  当synchronized()作用于静态方法时，就不再用this当锁对象，因为静态属性或方法不需要new出属性访问，
     *  所以就没有this引用的存在。所以当synchronized()锁定一个静态方法时相当于锁定当前类的class对象。
     *  静态方法,不需要实例就可以调用,那么我获取什么锁啊?只能获取本class的锁,你又不能给我传参
     */
    public static void mm(){
        synchronized(T.class){
            count--;
        }
    }
}

